import MRoot from './root-model'
import io from '../common/io'
import i18n from '../i18n'

const enhance = {
  io,
  session,
  i18n,
  /**
   * 下面两项用于解决mobx-state-tree奇葩的afterCreate的异步行为
   * 当项目列表加载完成后，将所有id同步到这里，用于后续判断索引是否
   * 存在
   */
}

const root = MRoot.create({}, enhance)

Object.assign(root, enhance)

// 让 rootModel 在全局可访问
window.waveview = root

export default root
